/* SPDX-License-Identifier: GPL-2.0 */

#ifndef __EULEROS_DIM_CORE_STATIC_BASELINE_H
#define __EULEROS_DIM_CORE_STATIC_BASELINE_H

#include "dim_baseline_node.h"

/**
 * dim_static_baseline_build() - build the dim static baseline
 *
 * if the static baseline has been build, will free and rebuild.
 * this function must be called after dim policy parsing
 *
 * Return: 0 on success or other values on failure
 */
int dim_static_baseline_build(void);

/**
 * dim_static_baseline_destroy() - free the dim static baseline
 */
void dim_static_baseline_destroy(void);

/**
 * dim_static_baseline_search() - search baseline data by filename
 * @filename: filename to be searched
 *
 * Return: pointer to found baseline data or NULL on failure
 */
struct dim_baseline_node *dim_static_baseline_search(char *filename,
						     enum dim_baseline_type type);

#endif
